using UnityEngine;
using System.Collections.Generic;
using INTERFAZ;
namespace PERSONAJES
{
	
	public class PersonajeJugador : MonoBehaviour {

		//Propiedades
		public static bool moverse=false;
		public static float posicionX;
		private float speed = 1.5F;
		public static Dialogo instanceDialogos= new Dialogo();
		public  static List<string>lineasDialogo=new List<string>();
		public static bool enDialogo=false;	

		void Update() {
			if(moverse == true)
				Desplazarse(posicionX);
			if(posicionX == this.transform.position.x)
			{
				moverse = false;
			}
		}

		void OnTriggerEnter2D(Collider2D other) {
			Debug.Log("Collider"+ other.gameObject.tag);
			if (other.gameObject.tag.Equals ("NonPlayer")) {
				moverse = false;
				enDialogo= true;
				Debug.Log("Empezar Dialogo");
				lineasDialogo=instanceDialogos.ObtenerDialogos(other.gameObject.name,"escena1");
				leerLineasDialogo();

				
			}

		}

		//Métodos

		/// <summary>
		/// Desplazarse the specified pCoordenadaX.
		/// </summary>
		/// <param name="pCoordenadaX">P coordenada x.</param>
		public void Desplazarse(float pCoordenadaX)
		{
			var renderer = this.GetComponent<Renderer>();
			float ancho = renderer.bounds.size.x;
			//{//	CambiarSprite(“caminar derecha”)
			//		Si coordenadaX < PersonajeJugador.PosicionX
			//		CambiarSprite(“caminar izquierda”)
			transform.position = Vector3.MoveTowards(transform.position,new Vector3(posicionX, transform.position.y, transform.position.z), speed * Time.deltaTime);
			//}					
			///	Al terminar CambiarSprite(“idle”)
		}

		/// <summary>
		/// Cambiars the sprite.
		/// </summary>
		/// <param name="pNombreSprite">P nombre sprite.</param>
		public void CambiarSprite(string pNombreSprite)
		{
			//PJ.Imagen = imagen(pNombreSprite)
		}

		//void OnCollisionEnter2D(Collision2D coll)
		//{
		//	Debug.Log("Collide");
		//}

		public bool isEnDialogo(){
			return enDialogo;
		}

		public void leerLineasDialogo(){
			foreach (string linea in lineasDialogo) {
				//imprimir liena de dialogo
				Debug.Log("linea:"+linea);
				//INTERFAZ.CuadroDialogo.MostrarDialogo(linea);
			}
		}

	
	}
}
